home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Almathera Ten Pack 2: CDPD 1
/
Almathera Ten on Ten - Disc 2: CDPD 1.iso
/
pd
/
176-200
/
183
/
pcq
/
readme.pcq
< prev
next >
Wrap
Text File
|
1995-03-13
|
5KB
|
110 lines
PCQ Pascal Compiler
Copyright (c) 1989 Patrick Quaid.
This is a slow Pascal sub-set compiler that produces
assembly language code, which can then be compiled into executable
programs. Read Pascal.DOC for details. The rest of the files in
this archive are:
ReadMe.PCQ This file.
Pascal The compiler.
PCQ.lib The run time library
Pascal.DOC Documentation.
Make A simple batch file that compiles, assembles and
links a simple program. It uses T:, so you might
want to assign T: to something like ram: or rad:.
Small.lib The library vector offsets of all the system
routines. This was put together by Matt Dillon.
The following four files might not have been included in the
archive. I hope they were, but in any case all of the rest of the
files must be. If some are missing, write to me at the address at
the bottom of this file to get a full version.
Blink Software Distillery's linker.
Blink.DOC Documentation for that
A68k Charlie Gibbs' assembler
A68k.DOC Documentation for the assembler
The following programs ending in .p are examples of various
PCQ features. They aren't worth much by themselves, but they show a
bit of what PCQ can do.
ChopCL.p Uses the command line and separate compilation.
ChopTest.p Runs the above through its paces.
Copy.p A very simple copy program.
MapMaker.p Another scenery generator.
Moire.p Shows the use of Intuition, Graphics, and Exec from PCQ.
Nests.p Shows nested procedures and scopes.
RealIO.p Readin' and writin' real numbers.
Snow.p Draws a fractal snowflake, and uses real math.
Structures.p Demonstrates (not very) complex data objects.
Typer.p Ultra simple type program.
WhereFrom.p Demonstrates use of DOS functions.
The files ending in .i are include files that define the
interfaces to the system. They are explained more fully in the
files themselves. Note that the example programs above expect
these files to be in a subdirectory called "include". If this
is a problem, change the include statements in the example
programs.
DOS.i All the DOS routines and a couple of structures.
Exec.i Exec library and memory routines.
ExecIO.i For system IO. You know, DoIO() and that lot.
Ports.i The structures and functions for messages and ports.
Intuition.i Mainly window and screen stuff so far.
Graphics.i Most of the drawing things, but no blitter stuff.
StringLib.i Very few routines for using strings in PCQ.
As you will see if you look through the include files, they
are not at all complete. Perhaps they will be in the next
version.... You might find, perhaps in a separate directory,
the source code for the compiler. The files have the following
names:
Main.p The main program, of course.
Calls.p A few code generation routines.
IO.p Handles input and output of the compiler.
Statements.p General statement parsing routines.
Declarations.p Variable, constant, and type declarations.
Stanprocs.p Handles write(), writeln(), read(), etc.
Stanfuncs.p Standard functions like abs(), ord(), etc.
Expression.p Parses all expressions.
Initialize.p Initializes the various tables.
Utilities.p Adds to and searches around the above mentioned tables.
Pasvar.i An include file that declares the variables.
Pastype.i An include file that declares the types.
Pasconst.i An include file that defines the constants.
makeall This is a batch file that compiles the above
files using Pascal to create a compiler called
Pascal2. It takes, roughly speaking, forever.
Pas2.w A "with" file for Blink used in makeall.
There might also be a directory with the source to the run
time library. If so, the files will all end with ".asm", and
will include something called Explanation.txt, which describes
the layout of the files in general terms. The rest of the files
are too numerous to mention, but if you run across about two dozen
assembly files, you've found them.
The source files all use tab characters rather than spaces. If
these tabs are not expanded to eight spaces, as they are with the
AmigaDOS "type" command, the indentation of all the programs will look
pretty odd. As far as I know, the AmigaDOS editor "Ed" will NOT
properly handle the tabs.
If you got an incomplete version or have any questions, write
to me at:
Pat Quaid
8320 E. Redwing
Scottsdale, AZ 85253
The documentation, compiler, run time library, and source
code for the compiler and run time library are all copyrighted by
me, but feel free to distribute complete copies of this archive.